package message;

import java.io.Serializable;
import model.messageboard.Message;
import java.util.GregorianCalendar;

public class CPMessage extends Message implements Serializable {
	
	private static final long serialVersionUID = 2743260518711056688L;
	
	private int status;
	private GregorianCalendar entryTime;
	private GregorianCalendar leavingTime;
	private boolean isFullyCharged;
	
	// CONSTRUCTOR
	
	public CPMessage(String fromID, int status, GregorianCalendar entryTime, GregorianCalendar leavingTime, boolean isFullyCharged) {
		super(fromID, "");
		this.status = status;
		this.entryTime = entryTime;
		this.leavingTime = leavingTime;
		this.isFullyCharged = isFullyCharged;
	}
	
	public CPMessage(String fromID, int status) {
		super(fromID, "");
		this.status = status;
	}
	
	public CPMessage(String fromID, GregorianCalendar entryTime, GregorianCalendar leavingTime) {
		super(fromID, "");
		this.entryTime = entryTime;
		this.leavingTime = leavingTime;
	}
	
	public CPMessage(String fromID, boolean isFullyCharged) {
		super(fromID, "");
		this.isFullyCharged = isFullyCharged;
	}
	
	public CPMessage(String fromID, int status, boolean isFullyCharged) {
		super(fromID, "");
		this.status = status;
		this.isFullyCharged = isFullyCharged;
	}
	
	public CPMessage(String fromID, String content) {
		super(fromID, content);
	}
	
	// GETTERS AND SETTERS
	
	public void setStatus(int status) {
		this.status = status;
	}
	
	public int getStatus() {
		return status;
	}
	
	public void setEntryTime(GregorianCalendar entryTime) {
		this.entryTime = entryTime;
	}
	
	public GregorianCalendar getEntryTime() {
		return entryTime;
	}
	
	public void setDepartureTime(GregorianCalendar leavingTime) {
		this.leavingTime = leavingTime;
	}
	
	public GregorianCalendar getDepartureTime() {
		return leavingTime;
	}
	
	public void setIsFullyCharged(boolean isFullyCharged) {
		this.isFullyCharged = isFullyCharged;
	}
	
	public boolean getIsFullyCharged() {
		return isFullyCharged;
	}

}
